Auto merge of #1931 - thirtythreeforty:printinfo, r=alexcrichton
authorbors <bors@rust-lang.org>
Fri, 28 Aug 2015 16:20:08 +0000 (16:20 +0000)
committerbors <bors@rust-lang.org>
Fri, 28 Aug 2015 16:20:08 +0000 (16:20 +0000)
commit1c27185cdaeb675a34e398e871f781b6c60dd20b
tree73fd16af1cd1a92ea65ee7f254507f601206cdc3
parentfc66290f270689f2f4da974b9f57a899ab06bd2e
parent492b5825c3975357594886d270eee037aaa5c6f4
Auto merge of #1931 - thirtythreeforty:printinfo, r=alexcrichton

Compare #1621.  Like that pull request, this one solves #984.

I have rewritten most of @pyfisch's logic to account for @alexcrichton's comments.  Specifically, this code will correctly handle adding/removing multiple versions of one package, as well as several packages with different sources, but the same name.

The output looks like this:

```
[georgev@desertvoice cargo]$ cargo update
    Updating registry `https://github.com/rust-lang/crates.io-index`
    Updating libc v0.1.8 -> v0.1.10
    Updating memchr v0.1.3 -> v0.1.5
    Updating num v0.1.26 -> v0.1.27
    Updating rand v0.3.9 -> v0.3.10
    Updating rustc-serialize v0.3.15 -> v0.3.16
```

Comments welcome.

r? @alexcrichton